home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Mission 3
/
Mission 3.zip
/
Mission 3.iso
/
tools
/
facevalu
/
examples
/
ex
/
ex.txt
next >
Wrap
Text File
|
1995-11-19
|
6KB
|
207 lines
This is a demo program created with Face Value 1.0. The RSC-file was
loaded into Face Value, some flags were set, and Face Value produced
a LST file for GFA Basic 3.x. You are now watching the result. All of
the code added afterwards to this LST-file by the user is listed below:
Added in the procedure @user_rsc_interact():
--------------------------------------------
~@win_open_dialog(2,about_dialog&,iconify_icon_1&)
~@win_open_dialog(5,modal&,iconify_icon_1&)
~@win_open_dialog(2,non_modal&,iconify_icon_1&)
~@win_open_dialog(3,toolbox&,iconify_icon_1&)
~@win_open_dialog(4,fvt_asci&,iconify_icon_1&)
~@win_open(" Standard window "," Info line...",simple_window%,backgrnd&,
800,800,16,0,0,0,800,800,iconify_icon_1&)
~@win_open(" Toolstrip window ","",toolstrip_window%,toolstrip&,
800,800,16,0,0,0,800,800,iconify_icon_1&)
~@win_open(" Toolbar window ","",toolbar_window%,toolbar&,800,800,
16,0,0,0,800,800,iconify_icon_1&)
@win_close_all
@win_close(window_array&(index&,0))
@win_iconify(-1)
@win_iconify_all
@win_uniconify(-1)
@win_uniconify_all
@win_cycle
@rsc_set_new_menu(menu&)
@rsc_set_new_menu(menu_2&)
@desktop_new(desktop&,desklogo&)
@desktop_restore
a$=@fileselector$("Fileselector with title!:",program_path$,"",0)
IF @alert_wind(1,alert_1&,"")=1
IF @alert_wind(1,alert_2&,"")=1
~@alert_wind(1,alert_3&,"")=1
ENDIF
ENDIF
@progress_open(-1)
FOR albert&=0 TO 1000
EXIT IF @progress_update(INT(albert&/10))
NEXT albert&
@progress_close
time&=@busy_open(TRUE)
FOR a&=0 TO 4000
EXIT IF @busy_update(time&)
NEXT a&
@busy_close
@open_text_window !****** Calls to procedures written for this demo,
@change_font(index&) !****** see bottom of text.
@aes_screen_lock
FOR a&=0 TO 80
@mouse_busy(2)
~EVNT_TIMER(100)
NEXT a&
@mouse_form(-1)
@aes_clear_buffers
@aes_screen_unlock
Changed/added in the procedure @user_rsc_var_init:
--------------------------------------------------
DIM lstbx_radio_arr$(23)
LET lstbx_radio_ndx&=24
LET lstbx_radio_var&=1
FOR a&=0 TO 23
lstbx_radio_arr$(a&)="Radio "+STR$(a&)
NEXT a&
DIM chcklist_arr$(23)
DIM chcklist_arr!(23)
LET chcklist_ndx&=24
FOR a&=0 TO 23
chcklist_arr$(a&)="Check "+STR$(a&)
NEXT a&
DIM list_menu_box_arr$(23)
LET list_menu_box_ndx&=24
FOR a&=0 TO 23
list_menu_box_arr$(a&)="Menu "+STR$(a&)
NEXT a&
Added in the procedure procedure @user_keyb():
----------------------------------------------
@win_keyb_scroll(handle&,ks&,key&)
Added in the procedure @user_window_content():
----------------------------------------------
LOCAL a&,b&,x&,y&,w&,h&
SELECT userhandle&
CASE 42
@win_get_workarea(index&,x&,y&,w&,h&)
y&=0
b&=DIV(off_y&,window_array&(index&,29))
x&=SUB(window_array&(index&,28),off_x&)
FOR a&=b& TO ADD(b&,DIV(h&,window_array&(index&,29)))
TEXT x&,y&,txt$(a&)
ADD y&,window_array&(index&,29)
NEXT a&
DEFAULT
FOR a&=95 TO 395 STEP 100
CIRCLE 400-off_x&,400-off_y&,a&
NEXT a&
ENDSELECT
Added in the procedure @user_on_open:
-------------------------------------
LOCAL d%
IF dimmed!=FALSE
dimmed!=TRUE
num_lines&=202
line_w&=90
DIM txt$(num_lines&)
OPEN "I",#10,"EX.TXT"
RECALL #10,txt$(),num_lines&,d%
CLOSE #10
ENDIF
Added in the procedure @user_on_exit:
-------------------------------------
IF acc&=0
@vdi_unload_fonts
ERASE txt$()
ENDIF
Added in the procedure @user_win_close_all:
-------------------------------------------
FOR a&=0 TO max_number_windows&
IF window_array&(a&,0)>0
IF window_array&(a&,1)=0
IF window_array&(a&,8)=42
@vdi_unload_fonts(window_array&(a&,22))
ENDIF
ENDIF
ENDIF
NEXT a&
Added in the function @user_win_close_ok():
-------------------------------------------
IF userhandle&=42
@vdi_unload_fonts(window_array&(index&,22))
ENDIF
Written spesifically for this demo program:
-------------------------------------------
PROCEDURE open_text_window
LOCAL handle&,index&,totw&,toth&,scrlstep&,d&
~GRAF_HANDLE(w&,h&,d&,d&)
totw&=MUL(w&,line_w&)
toth&=MUL(h&,num_lines&)
scrlstep&=h&
handle&=@win_open(" System font at 10 points ","",menu_in_window%,window_menu&,
totw&,toth&,scrlstep&,42,0,0,1200,1200,iconify_icon_1&)
IF handle&>0
index&=@win_get_index(handle&)
~@vdi_load_fonts(window_array&(index&,22))
@vst_alignment(window_array&(index&,22),0,5)
window_array&(index&,26)=1
window_array&(index&,27)=10
window_array&(index&,28)=w&
window_array&(index&,29)=h&
ENDIF
RETURN
PROCEDURE change_font(index&)
LOCAL id&,size&,wcell&,hcell&,ret%,x&,y&,w&,h&,name$,handle&
IF index&=-1
~WIND_GET(0,10,handle&,d&,d&,d&)
index&=@win_get_index(handle&)
ENDIF
id&=window_array&(index&,26)
size&=window_array&(index&,27)
wcell&=window_array&(index&,28)
hcell&=window_array&(index&,29)
ret%=@xfsl(window_array&(index&,22),"Choose Font",254,name$,id&,size&,wcell&,hcell&)
IF ret%=1
@win_set_title(index&," "+name$+" "+STR$(size&)+" points ")
window_array&(index&,26)=id&
window_array&(index&,27)=size
window_array&(index&,28)=wcell&
window_array&(index&,29)=hcell&
@win_change_size(index&,MUL(wcell&,num_lines&),MUL(hcell&,line_w&),hcell&,0)
@win_get_workarea(index&,x&,y&,w&,h&)
@win_send_redraw(index&,x&,y&,w&,h&)
ENDIF
RETURN